import { testNumber } from '../../libs/utils'



export const dragListProps = {
	// 列表高度
	height: {
		type: [String, Number]
	},
	// 是否拖动触感反馈
	feedbackGenerator: {
		type: Boolean,
		default: null
	},
	// 拖拽至边缘是否自动滚动列表
	autoScroll: {
		type: Boolean,
		default: null
	},
	// 长按多少毫秒后触发拖拽
	longTouchTime: {
		type: [String, Number],
		validator: (value: string | number) => {
			return testNumber(value)
		}
	},
	// 是否禁用
	disabled: {
		type: Boolean,
		default: null
	},
	// 子项高度，单位px
	itemHeight: {
		type: [String, Number],
		validator: (value: string | number) => {
			return testNumber(value)
		}
	},
	// 右侧图标
	icon: {
		type: String
	},
	// 右侧图标颜色
	iconColor: {
		type: String
	},
	// 右侧图标大小
	iconSize: {
		type: [String, Number]
	},
	// 是否显示下划线边框
	borderBottom: {
		type: Boolean,
		default: null
	},
	// 下划线颜色
	borderColor: {
		type: String
	},
	// 列表背景颜色
	bgColor: {
		type: String
	},
}
type EventType = {
	index: number,
	toIndex: number,
	item: any
}
export const dragListEmits = {
	changing: (e: EventType) => true,
	change: (e: Array<{		
		index: number|string
		sort: number
	}>) => true
}